Skip to content

Cphy rb3g2 rb4 rb8#693

Open
aarunnan wants to merge 14 commits into
qualcomm-linux:qcom-6.18.yfrom
aarunnan:cphy_rb3g2_rb4_rb8
Open

Cphy rb3g2 rb4 rb8#693
aarunnan wants to merge 14 commits into
qualcomm-linux:qcom-6.18.yfrom
aarunnan:cphy_rb3g2_rb4_rb8

Conversation

@aarunnan

Copy link
Copy Markdown

Added CPHY support of RB3G2, RB4 and RB8

@qlijarvis

Copy link
Copy Markdown

PR #693 — validate-patch

PR: #693

Verdict Issues Detailed Report
⚠️ 8 Full report

Final Summary

  1. Lore link present: No — This is a WIP v4 series not yet posted to lore.kernel.org for upstream review

  2. Lore link matches PR commits: N/A — No lore link to compare against; this appears to be internal development work

  3. Upstream patch status: Not upstream — Marked as "WIP v4", indicating work-in-progress status. The series adds C-PHY support to Qualcomm CAMSS driver but is not yet ready for upstream submission

  4. PR present in qcom-next: Not checked — This is a feature addition PR for internal integration; upstream submission would follow after internal validation

Recommendation: Clean up commit messages (especially patch 08/13), remove WIP tags from subjects, address Bryan O'Donoghue's review feedback, and ensure all patches follow kernel commit message standards before merging or submitting upstream.

Verdict: ⚠️ — click to expand

🔍 Patch Validation

PR: #693 - media: qcom: camss: Add C-PHY support for Qualcomm CAMSS driver
Upstream commit: N/A (WIP v4 series, not yet submitted upstream)
Verdict: ⚠️ PARTIAL

Commit Message

Check Status Note
Subject matches upstream N/A WIP series, not yet upstream
Body preserves rationale ⚠️ Patch 08/13 contains review comments in commit message
Fixes tag present/correct N/A No Fixes tags needed for new feature
Authorship preserved Multiple authors properly credited
Backport note (if applicable) N/A Not a backport

Diff

File Status Notes
camss-csiphy.h Clean addition of phy_cfg field
camss.c Proper endpoint parsing for C-PHY/D-PHY
camss-csiphy-3ph-1-0.c ⚠️ Contains large register tables, proper for hardware init
camss-csid-gen2.c Clean PHY type configuration
camss-csid.c Proper C-PHY detection and configuration
camss-csiphy-2ph-1-0.c Return type change for error handling
camss-csid-gen3.c PHY type select bit added
camss.c (link freq) Correct C-PHY/D-PHY divider calculation

Issues

Critical:

  • Patch 08/13: Commit message contains unresolved review feedback from @BoD (Bryan O'Donoghue). The commit message includes:
    --
    @bod
    Proliferating special cases in switch statements on a per-SoC basis is
    verboten.
    
    Please find another way to do this, you already have a bool to indicate
    cphy in struct csid_phy_config {} so at some level CAMSS already has a
    bool to indicate what to do.
    
    Please make that logic accessible to logical consumers throughout,
    in this case the CPHY code.
    --
    
    This review comment should NOT be in the final commit message. It indicates the patch may need rework.

Minor:

  • All patches have double subject prefixes: [PATCH 01/13] [PATCH WIP v4 1/9] - the inner WIP tag should be removed before merging
  • Patch 08/13 subject is incomplete: "C-PHY needs own lane configuration" - missing proper capitalization and clarity
  • Multiple sign-off chains suggest this is a collaborative work-in-progress that may need consolidation

Authorship:

  • ✅ Multiple authors properly credited (David Heidelberg, Casey Connolly, Petr Hodina, Luca Weiss, Jigarkumar Zala, Anusha Arun Nandi)
  • ✅ Co-developed-by tags used correctly in patch 05/13
  • ✅ Reviewed-by tags preserved from upstream reviews
  • ✅ Suggested-by tag properly credits Sakari Ailus in patch 09/13

Verdict

Do not merge as-is. Patch 08/13 contains unresolved review feedback in the commit message that must be removed. The series appears to be a work-in-progress (WIP v4) that requires cleanup before final submission. The technical changes look reasonable, but the commit message hygiene needs attention.

Final Summary

  1. Lore link present: No — This is a WIP v4 series not yet posted to lore.kernel.org for upstream review

  2. Lore link matches PR commits: N/A — No lore link to compare against; this appears to be internal development work

  3. Upstream patch status: Not upstream — Marked as "WIP v4", indicating work-in-progress status. The series adds C-PHY support to Qualcomm CAMSS driver but is not yet ready for upstream submission

  4. PR present in qcom-next: Not checked — This is a feature addition PR for internal integration; upstream submission would follow after internal validation

Recommendation: Clean up commit messages (especially patch 08/13), remove WIP tags from subjects, address Bryan O'Donoghue's review feedback, and ensure all patches follow kernel commit message standards before merging or submitting upstream.

@qlijarvis

Copy link
Copy Markdown

PR #693 — checker-log-analyzer

PR: #693
Checker run: https://github.com/qualcomm-linux/kernel-config/actions/runs/27304123988

Checker Result Summary
Checker Result Summary
checkpatch ⚠️ 1 warning: commit description line exceeds 75 chars
dt-binding-check ⏭️ No DT binding changes
dtb-check ⏭️ No devicetree changes
sparse-check Passed (pre-existing warnings in nouveau driver only)
check-uapi-headers No UAPI header changes
check-patch-compliance All 13 commits missing required prefix
tag-check N/A Not applicable for this branch
qcom-next-check N/A Not applicable for this branch

Detailed report: Full report

Checker analysis — click to expand

🤖 CI Checker Analysis (checker-log-analyzer)

PR: #693 - media: qcom: camss: C-PHY support (13 commits)
Source: https://github.com/qualcomm-linux/kernel-config/actions/runs/27304123988

Checker Result Summary
checkpatch ⚠️ 1 warning: commit description line exceeds 75 chars
dt-binding-check ⏭️ No DT binding changes
dtb-check ⏭️ No devicetree changes
sparse-check Passed (pre-existing warnings in nouveau driver only)
check-uapi-headers No UAPI header changes
check-patch-compliance All 13 commits missing required prefix
tag-check N/A Not applicable for this branch
qcom-next-check N/A Not applicable for this branch

❌ check-patch-compliance

Root cause: All 13 commits in this PR lack the required subject prefix (UPSTREAM:, FROMLIST:, BACKPORT:, or FROMGIT:).

Failure details:

Checking commit: [PATCH WIP v4 1/9] media: qcom: camss: csiphy: Introduce PHY configuration
Commit summary does not start with a required prefix

Checking commit: [PATCH WIP v4 2/9] media: qcom: camss: csiphy-3ph: Use odd bits for configuring C-PHY lanes
Commit summary does not start with a required prefix

... (repeated for all 13 commits)

Checking commit: media: qcom: camss: Add CAMSS_8300 C-PHY support
Commit summary does not start with a required prefix

The checker expects commit subjects to begin with one of:

  • UPSTREAM: - for patches already merged in mainline
  • FROMLIST: - for patches posted to upstream mailing lists
  • BACKPORT: - for backported patches
  • FROMGIT: - for patches from another git tree

Fix:

  1. If these patches are posted upstream (WIP v4 suggests they are), prefix all commit subjects with FROMLIST::

    git rebase -i HEAD~13
    # Mark all commits for 'reword'
    # For each commit, change:
    #   FROM: media: qcom: camss: csiphy: Introduce PHY configuration
    #   TO:   FROMLIST: media: qcom: camss: csiphy: Introduce PHY configuration
  2. If these are internal-only patches, prefix with CHROMIUM: or the appropriate internal prefix per your project policy.

  3. Remove the [PATCH WIP v4 X/9] prefix from the first 9 commits - this is mailing list metadata that should not appear in git commit subjects.

Reproduce locally:

cd /path/to/kernel
git clone https://github.com/qualcomm-linux/kernel-checkers.git
bash kernel-checkers/check-patch-compliance.sh \
  --kernel-src . \
  --base d58ad5c480fa \
  --head a41cccdbdf25

⚠️ checkpatch

Root cause: Commit 862a3fb6dafd ("media: qcom: camss: Prepare CSID for C-PHY support in gen3") has a commit description line exceeding 75 characters.

Failure details:

WARNING: Prefer a maximum 75 chars per line (possible unwrapped commit description?)
#7: 
the configured PHY type so that the CSID RX path is told whether the incoming

862a3fb6dafdc21518952b13f142ed338b982436 total: 0 errors, 1 warnings, 0 checks, 14 lines checked

Fix: Reword the commit message for 862a3fb6dafd to wrap lines at 75 characters or less. This is a style preference, not a hard blocker.

Reproduce locally:

cd /path/to/kernel
scripts/checkpatch.pl -g 862a3fb6dafd

Verdict

1 blocker to fix before merge:

The check-patch-compliance failure is a hard blocker. All 13 commits must be prefixed with FROMLIST: (or the appropriate prefix). The checkpatch warning is minor and can be addressed optionally.

Action required: Rebase the PR to add the required prefix to all commit subjects and remove the [PATCH WIP v4 X/9] metadata from commits 1-9.

@aarunnan aarunnan force-pushed the cphy_rb3g2_rb4_rb8 branch 2 times, most recently from ca23269 to 9f3992a Compare June 11, 2026 17:22
@qlijarvis

Copy link
Copy Markdown

PR #693 — validate-patch

PR: #693

Verdict Issues Detailed Report
⚠️ 0 Full report

Final Summary

  1. Lore link present: No — FROMLIST patches lack Link: tags to lore.kernel.org threads. This makes it impossible to verify upstream submission status or compare against posted versions.

  2. Lore link matches PR commits: N/A — No lore links provided to compare against. Cannot verify if PR patches match what was posted upstream.

  3. Upstream patch status: Unknown — FROMLIST prefix indicates patches were submitted upstream, but without lore links, cannot verify if they are:

    • Still in review
    • Accepted but not yet merged
    • Rejected or require changes
    • Never actually posted
  4. PR present in qcom-next: Not checked — Would require kernel tree access which is outside scope.

Verdict: ⚠️ — click to expand

🔍 Patch Validation

PR: #693 - media: qcom: camss C-PHY support series
Upstream commit: N/A (FROMLIST patches not yet merged; CHROMIUM patches are vendor-specific)
Verdict: ⚠️ PARTIAL

Commit Message Analysis

Patch Prefix Author Preserved Issues
01/13 FROMLIST ✅ David Heidelberg No lore link provided
02/13 FROMLIST ✅ David Heidelberg No lore link provided
03/13 FROMLIST ✅ David Heidelberg No lore link provided
04/13 FROMLIST ✅ Petr Hodina No lore link provided
05/13 FROMLIST ✅ Casey Connolly No lore link provided
06/13 FROMLIST ✅ David Heidelberg No lore link provided
07/13 FROMLIST ✅ Luca Weiss No lore link provided
08/13 FROMLIST ✅ David Heidelberg Contains review comment in commit message
09/13 FROMLIST ✅ David Heidelberg No lore link provided
10/13 CHROMIUM ✅ Jigarkumar Zala Vendor-specific (expected)
11/13 CHROMIUM ✅ Jigarkumar Zala Vendor-specific (expected)
12/13 CHROMIUM ✅ Jigarkumar Zala Vendor-specific (expected)
13/13 CHROMIUM ✅ Anusha Arun Nandi Vendor-specific (expected)

Commit Message Details

Patches 01-09 (FROMLIST):

Check Status Note
Subject format Proper kernel subsystem format
Body preserves rationale Technical rationale present
Fixes tag present/correct N/A Not applicable (new feature)
Authorship preserved Original authors maintained
Backport note N/A FROMLIST indicates pending upstream

Patches 10-13 (CHROMIUM):

Check Status Note
Subject format CHROMIUM prefix indicates vendor-specific
Body preserves rationale Technical rationale present
Fixes tag present/correct N/A Not applicable
Authorship preserved Qualcomm authors
Backport note N/A Vendor-specific patches

Issues

Critical:

  1. Patch 08/13: Contains embedded review comment from Bryan O'Donoghue (@BoD) in the commit message body. The review comment block starting with -- and ending with -- should be removed before merging. This is not acceptable in a final commit message.

Major:
2. Missing lore links: All FROMLIST patches (01-09) lack Link: tags pointing to the upstream mailing list discussion. FROMLIST patches should include lore.kernel.org links to track the upstream submission.

Minor:
3. Patch 09/13: Has multiple sign-offs including Jigarkumar Zala who is not the original author. The sign-off chain suggests this patch was modified after the original submission by David Heidelberg.

Diff Analysis

Unable to validate diff faithfulness to upstream without lore links. The patches appear technically sound based on:

  • Consistent coding style with kernel conventions
  • Proper use of kernel APIs (V4L2, media subsystem)
  • Logical progression of C-PHY support implementation
  • Appropriate use of switch statements and error handling

Verdict

Cannot merge as-is. Patch 08/13 must have the review comment removed from the commit message. Additionally, all FROMLIST patches should ideally include Link: tags to the upstream mailing list threads for traceability.

Final Summary

  1. Lore link present: No — FROMLIST patches lack Link: tags to lore.kernel.org threads. This makes it impossible to verify upstream submission status or compare against posted versions.

  2. Lore link matches PR commits: N/A — No lore links provided to compare against. Cannot verify if PR patches match what was posted upstream.

  3. Upstream patch status: Unknown — FROMLIST prefix indicates patches were submitted upstream, but without lore links, cannot verify if they are:

    • Still in review
    • Accepted but not yet merged
    • Rejected or require changes
    • Never actually posted
  4. PR present in qcom-next: Not checked — Would require kernel tree access which is outside scope.

Recommendations

Before merging:

  1. MUST FIX: Remove the review comment block from patch 08/13 commit message (lines starting with -- containing @BoD's feedback)
  2. SHOULD ADD: Include Link: tags for all FROMLIST patches pointing to their lore.kernel.org threads
  3. SHOULD VERIFY: Confirm FROMLIST patches match the versions posted upstream (if any changes were made based on review, they should be noted)

CHROMIUM patches (10-13): These are vendor-specific and appropriately marked. No upstream links expected or required.

@qlijarvis

Copy link
Copy Markdown

PR #693 — checker-log-analyzer

PR: #693
Checker run: https://github.com/qualcomm-linux/kernel-config/actions/runs/27365399418

Checker Result Summary
Checker Result Summary
checkpatch Merge conflict - cannot apply PR to baseline
dt-binding-check Merge conflict - cannot apply PR to baseline
dtb-check Merge conflict - cannot apply PR to baseline
sparse-check Merge conflict - cannot apply PR to baseline
check-uapi-headers Merge conflict - cannot apply PR to baseline
check-patch-compliance Merge conflict - cannot apply PR to baseline
tag-check N/A Not executed due to merge failure
qcom-next-check N/A Not executed due to merge failure

Detailed report: Full report

Checker analysis — click to expand

🤖 CI Checker Analysis (checker-log-analyzer)

PR: #693 - FROMLIST: media: qcom: camss C-PHY support (13 patches)
Source: https://github.com/qualcomm-linux/kernel-config/actions/runs/27365399418

Checker Result Summary
checkpatch Merge conflict - cannot apply PR to baseline
dt-binding-check Merge conflict - cannot apply PR to baseline
dtb-check Merge conflict - cannot apply PR to baseline
sparse-check Merge conflict - cannot apply PR to baseline
check-uapi-headers Merge conflict - cannot apply PR to baseline
check-patch-compliance Merge conflict - cannot apply PR to baseline
tag-check N/A Not executed due to merge failure
qcom-next-check N/A Not executed due to merge failure

❌ All Checkers (Merge Conflict)

Root cause: PR #693 cannot be cleanly merged into the qcom-6.18.y baseline due to a content conflict in drivers/media/platform/qcom/camss/camss-csiphy-3ph-1-0.c.

Failure details:

2026-06-11T17:46:56.1488482Z Auto-merging drivers/media/platform/qcom/camss/camss-csiphy-3ph-1-0.c
2026-06-11T17:46:56.1490605Z CONFLICT (content): Merge conflict in drivers/media/platform/qcom/camss/camss-csiphy-3ph-1-0.c
2026-06-11T17:46:56.1492050Z Auto-merging drivers/media/platform/qcom/camss/camss.c
2026-06-11T17:46:56.1493045Z Auto-merging drivers/media/platform/qcom/camss/camss.h
2026-06-11T17:46:56.2083419Z Automatic merge failed; fix conflicts and then commit the result.
2026-06-11T17:46:56.2122245Z Merge failed or conflicts detected. Aborting merge.
2026-06-11T17:46:56.3418377Z ##[error]Process completed with exit code 3.

The CI workflow attempts to merge the PR branch into qcom-6.18.y baseline (HEAD: 055ce4ebf97b) but encounters a merge conflict. While camss.c and camss.h auto-merge successfully, camss-csiphy-3ph-1-0.c has conflicting changes that require manual resolution.

Fix:

  1. Rebase the PR branch onto the latest qcom-6.18.y:

    git fetch origin qcom-6.18.y
    git rebase origin/qcom-6.18.y
  2. Resolve the conflict in drivers/media/platform/qcom/camss/camss-csiphy-3ph-1-0.c:

    • Open the file and look for conflict markers (<<<<<<<, =======, >>>>>>>)
    • The conflict likely involves changes to lane configuration logic (D-PHY vs C-PHY)
    • Integrate both sets of changes appropriately, ensuring C-PHY odd-bit configuration (from patch 02/13) is preserved
    • Remove conflict markers
  3. Complete the rebase:

    git add drivers/media/platform/qcom/camss/camss-csiphy-3ph-1-0.c
    git rebase --continue
  4. Force-push the rebased branch:

    git push --force-with-lease

Reproduce locally:

git clone https://github.com/qualcomm-linux/kernel.git
cd kernel
git checkout qcom-6.18.y
git fetch origin pull/693/head:pr-693
git merge --no-commit pr-693
# Observe the same conflict in camss-csiphy-3ph-1-0.c

Verdict

1 blocker to fix: The PR must be rebased onto the current qcom-6.18.y baseline and the merge conflict in drivers/media/platform/qcom/camss/camss-csiphy-3ph-1-0.c must be resolved before any checkers can run. Once the conflict is resolved and the PR is updated, all checkers will need to be re-run to validate the patches.

okias and others added 13 commits June 11, 2026 14:30
Read PHY configuration from the device-tree bus-type and save it into
the csiphy structure for later use.

For C-PHY, skip clock line configuration, as there is none.

Link: https://lore.kernel.org/linux-media/20260301-qcom-cphy-v4-1-e53316d2cc65@ixit.cz/

Signed-off-by: David Heidelberg <david@ixit.cz>
Signed-off-by: Anusha Arun Nandi <aarunnan@qti.qualcomm.com>
…g C-PHY lanes

So far, only D-PHY mode was supported, which uses even bits when enabling
or masking lanes. For C-PHY configuration, the hardware instead requires
using the odd bits.

Since there can be unrecognized configuration allow returning failure.

Link: https://lore.kernel.org/linux-media/20260301-qcom-cphy-v4-2-e53316d2cc65@ixit.cz/

Signed-off-by: David Heidelberg <david@ixit.cz>
Signed-off-by: Anusha Arun Nandi <aarunnan@qti.qualcomm.com>
Inherit C-PHY information from CSIPHY, so we can configure CSID
properly.

CSI2_RX_CFG0_PHY_TYPE_SEL must be set to 1, when C-PHY mode is used.

Link: https://lore.kernel.org/linux-media/20260301-qcom-cphy-v4-3-e53316d2cc65@ixit.cz/

Signed-off-by: David Heidelberg <david@ixit.cz>
Signed-off-by: Anusha Arun Nandi <aarunnan@qti.qualcomm.com>
…on is available

The lanes must not be initialized before the driver has access to
the lane configuration, as it depends on whether D-PHY or C-PHY mode
is in use. Move the lane initialization to a later stage where the
configuration structures are available.

Link: https://lore.kernel.org/linux-media/20260301-qcom-cphy-v4-4-e53316d2cc65@ixit.cz/

Signed-off-by: Petr Hodina <phodina@protonmail.com>
Signed-off-by: David Heidelberg <david@ixit.cz>
Signed-off-by: Anusha Arun Nandi <aarunnan@qti.qualcomm.com>
…HY init

Add a PHY configuration sequence for the sdm845 which uses a Qualcomm
Gen 2 version 1.1 CSI-2 PHY.

The PHY can be configured as two phase or three phase in C-PHY or D-PHY
mode. This configuration supports three-phase C-PHY mode.

Link: https://lore.kernel.org/linux-media/20260301-qcom-cphy-v4-5-e53316d2cc65@ixit.cz/

Signed-off-by: Casey Connolly <casey.connolly@linaro.org>
Reviewed-by: Vladimir Zapolskiy <vladimir.zapolskiy@linaro.org>
Reviewed-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org>
Co-developed-by: David Heidelberg <david@ixit.cz>
Signed-off-by: David Heidelberg <david@ixit.cz>
Signed-off-by: Anusha Arun Nandi <aarunnan@qti.qualcomm.com>
… CPHY init

These values should improve C-PHY behaviour. Should match most recent
Qualcomm code.

Link: https://lore.kernel.org/linux-media/20260301-qcom-cphy-v4-6-e53316d2cc65@ixit.cz/

Signed-off-by: David Heidelberg <david@ixit.cz>
Signed-off-by: Anusha Arun Nandi <aarunnan@qti.qualcomm.com>
…C-PHY init

Add a PHY configuration sequence for the sm8250 which uses a Qualcomm
Gen 2 version 1.2.1 CSI-2 PHY.

The PHY can be configured as two phase or three phase in C-PHY or D-PHY
mode. This configuration supports three-phase C-PHY mode.

Link: https://lore.kernel.org/linux-media/20260301-qcom-cphy-v4-7-e53316d2cc65@ixit.cz/

Signed-off-by: Luca Weiss <luca.weiss@fairphone.com>
Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Signed-off-by: David Heidelberg <david@ixit.cz>
Signed-off-by: Anusha Arun Nandi <aarunnan@qti.qualcomm.com>
…uration

Catch when C-PHY configuration gets used on SoC with CAMSS missing C-PHY
configuration lane registers.

Hopefully this check will disappear as these lane regs gets populated.

--
@BoD
Proliferating special cases in switch statements on a per-SoC basis is
verboten.

Please find another way to do this, you already have a bool to indicate
cphy in struct csid_phy_config {} so at some level CAMSS already has a
bool to indicate what to do.

Please make that logic accessible to logical consumers throughout,
in this case the CPHY code.
--

Link: https://lore.kernel.org/linux-media/20260301-qcom-cphy-v4-8-e53316d2cc65@ixit.cz/

Signed-off-by: David Heidelberg <david@ixit.cz>
Signed-off-by: Anusha Arun Nandi <aarunnan@qti.qualcomm.com>
… frequency

Ensure that the link frequency divider correctly accounts for C-PHY
operation. The divider differs between D-PHY and C-PHY, as described
in the MIPI CSI-2 specification.

For more details, see:
https://docs.kernel.org/driver-api/media/tx-rx.html#pixel-rate

Link: https://lore.kernel.org/linux-media/20260301-qcom-cphy-v4-9-e53316d2cc65@ixit.cz/

Suggested-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: David Heidelberg <david@ixit.cz>
Signed-off-by: Jigarkumar Zala <jzala@qti.qualcomm.com>
Signed-off-by: Anusha Arun Nandi <aarunnan@qti.qualcomm.com>
Use these switch cases to add the sa8775p (CAMSS_8775P) 3-phase 1.5 Gsps
settings, programming the appropriate common-control register 5/6/7
and reset-release values for C-PHY and D-PHY.

Signed-off-by: Jigarkumar Zala <jzala@qti.qualcomm.com>
Signed-off-by: Anusha Arun Nandi <aarunnan@qti.qualcomm.com>
Add the CSI2 RX PHY type select bitfield and program it from
the configured PHY type so that the CSID RX path is told
whether the incoming data is C-PHY or D-PHY.

Signed-off-by: Jigarkumar Zala <jzala@qti.qualcomm.com>
Signed-off-by: Anusha Arun Nandi <aarunnan@qti.qualcomm.com>
Add the lane_regs_sa8775p_3ph[] register table for the
sa8775p Gen3 CSIPHY at 1.5 Gsps, and select it in csiphy_lanes_enable() for
CAMSS_8775P when the endpoint is configured for C-PHY, falling back to the
existing sa8775p D-PHY table otherwise.

Signed-off-by: Jigarkumar Zala <jzala@qti.qualcomm.com>
Signed-off-by: Anusha Arun Nandi <aarunnan@qti.qualcomm.com>
Share the C-PHY/D-PHY lane_regs selection for CAMSS_8300 so
the sa8300 platform uses the same 3ph handling as CAMSS_8775P. Also drop
CAMSS_8300 from the missing-C-PHY-table guard now that a C-PHY table is
provided.

Signed-off-by: Jigarkumar Zala <jzala@qti.qualcomm.com>
Signed-off-by: Anusha Arun Nandi <aarunnan@qti.qualcomm.com>
@aarunnan aarunnan force-pushed the cphy_rb3g2_rb4_rb8 branch from dd0b022 to 26c9ab2 Compare June 11, 2026 21:46
@qswat-orbit-external

Copy link
Copy Markdown

Merge Check Failed: No CR Numbers Found

Error: No Change Request numbers were found.

Please add Change Request numbers to your pull request description in the format CRs-Fixed: 12345 or link GitHub issues that are associated with Change Requests.

Signed-off-by: aarunnan <aarunnan@quicinc.com>
@qswat-orbit-external

Copy link
Copy Markdown

Merge Check Failed: No CR Numbers Found

Error: No Change Request numbers were found.

Please add Change Request numbers to your pull request description in the format CRs-Fixed: 12345 or link GitHub issues that are associated with Change Requests.

@qlijarvis

Copy link
Copy Markdown

PR #693 — validate-patch

PR: #693

Verdict Issues Detailed Report
⚠️ 0 Full report

Final Summary

  1. Lore link present: Yes for patches 1-9 (FROMLIST); No for patches 10-13 (CHROMIUM - vendor-only, no lore link expected)

  2. Lore link matches PR commits: Cannot verify — lore links dated 2026-03-01 are inaccessible. Links follow correct format pattern for a v4 series but content cannot be fetched for comparison.

  3. Upstream patch status: In review / Not yet posted — The FROMLIST prefix indicates patches are intended for upstream submission. The v4 series designation suggests this is the 4th revision, but the future date (2026-03-01) and inaccessible links indicate the series may not be posted yet or links are placeholders.

  4. PR present in qcom-next: Not checked — This validation focuses on commit message correctness and upstream alignment per scope constraints. CHROMIUM patches (10-13) are vendor-only additions for sa8775p/sa8300 platform support.

Recommendation: Hold merge until upstream series is actually posted and lore links become accessible for diff verification. Once posted, re-validate that PR patches match the upstream submission exactly.

Verdict: ⚠️ — click to expand

🔍 Patch Validation

PR: #693
Title: C-PHY support for Qualcomm CAMSS driver (13 patches)
Upstream commit: Multiple patches from lore series 20260301-qcom-cphy-v4
Verdict: ⚠️ PARTIAL

Summary

This PR contains 13 patches split into two categories:

  • Patches 1-9: FROMLIST patches with lore.kernel.org links (upstream submission in progress)
  • Patches 10-13: CHROMIUM patches (vendor-specific, not posted upstream)

Commit Message Analysis

Patch Prefix Status Notes
01/13 FROMLIST Subject: "csiphy: Introduce PHY configuration"
02/13 FROMLIST Subject: "csiphy-3ph: Use odd bits for configuring C-PHY lanes"
03/13 FROMLIST Subject: "Prepare CSID for C-PHY support"
04/13 FROMLIST Subject: "Initialize lanes after lane configuration is available"
05/13 FROMLIST Subject: "csiphy-3ph: Add Gen2 v1.1 MIPI CSI-2 CPHY init"
06/13 FROMLIST Subject: "csiphy-3ph: Update Gen2 v1.2 MIPI CSI-2 CPHY init"
07/13 FROMLIST Subject: "csiphy-3ph: Add Gen2 v2.0 MIPI CSI-2 CPHY init"
08/13 FROMLIST Subject: "csiphy-3ph: C-PHY needs different lane_regs"
09/13 FROMLIST Subject: "Account for C-PHY when calculating link frequency"
10/13 CHROMIUM Subject: "Program common control register" (vendor-specific)
11/13 CHROMIUM Subject: "Prepare CSID for C-PHY support in gen3" (vendor-specific)
12/13 CHROMIUM Subject: "Add sa8775p C-PHY 3ph lane config" (vendor-specific)
13/13 CHROMIUM Subject: "Add CAMSS_8300 C-PHY support" (vendor-specific)

Authorship & Sign-off Chain

Check Status Notes
Original authorship preserved FROMLIST patches preserve upstream authors (David Heidelberg, Casey Connolly, Petr Hodina, Luca Weiss)
Sign-off chain valid All patches have proper sign-off chains ending with Anusha Arun Nandi (submitter)
Co-developed-by tags Patch 05/13 correctly uses Co-developed-by for David Heidelberg
Reviewed-by tags Patches 05/13 and 07/13 preserve upstream review tags
Suggested-by tags Patch 09/13 preserves Suggested-by: Sakari Ailus

Lore Links

Check Status Notes
Links present (FROMLIST) All 9 FROMLIST patches have lore.kernel.org links
Link format Links follow pattern: https://lore.kernel.org/linux-media/20260301-qcom-cphy-v4-N-e53316d2cc65@ixit.cz/
Links accessible ⚠️ Links dated 2026-03-01 (future date) - series not yet posted or links are placeholders
Links match patch order Patches 1-9 correspond to series parts 1-9

Diff Validation

Note: Without access to actual upstream patches (lore links return empty), full diff comparison cannot be performed. However, structural analysis shows:

Aspect Status Notes
File paths All modifications in drivers/media/platform/qcom/camss/
Change scope Changes focused on C-PHY support: csiphy, csid, and core camss files
Code style Follows kernel coding style conventions
Logical progression Patches build incrementally: infrastructure → D-PHY/C-PHY handling → platform-specific configs

Issues

  1. ⚠️ Lore links inaccessible: The lore.kernel.org links dated 2026-03-01 return empty responses. This suggests either:

    • The series has not been posted to the mailing list yet
    • The links are placeholders for a future submission
    • The date format is incorrect
  2. ⚠️ Cannot verify diff faithfulness: Without access to the actual upstream patches, byte-for-byte diff comparison cannot be performed.

  3. ✅ CHROMIUM patches correctly marked: Patches 10-13 are properly prefixed with CHROMIUM: and do not have lore links, indicating they are vendor-specific additions not intended for upstream.

Verdict

Conditional approval with verification required:

The PR structure and metadata are correct:

  • ✅ Proper FROMLIST/CHROMIUM prefixing
  • ✅ Authorship and sign-off chains preserved
  • ✅ Logical patch organization
  • ✅ Appropriate lore link format

However:

  • ⚠️ Upstream patches cannot be verified because lore links are inaccessible (future-dated or not yet posted)
  • ⚠️ Recommendation: Verify that the FROMLIST patches match the actual upstream submission once the series is posted to linux-media mailing list

Final Summary

  1. Lore link present: Yes for patches 1-9 (FROMLIST); No for patches 10-13 (CHROMIUM - vendor-only, no lore link expected)

  2. Lore link matches PR commits: Cannot verify — lore links dated 2026-03-01 are inaccessible. Links follow correct format pattern for a v4 series but content cannot be fetched for comparison.

  3. Upstream patch status: In review / Not yet posted — The FROMLIST prefix indicates patches are intended for upstream submission. The v4 series designation suggests this is the 4th revision, but the future date (2026-03-01) and inaccessible links indicate the series may not be posted yet or links are placeholders.

  4. PR present in qcom-next: Not checked — This validation focuses on commit message correctness and upstream alignment per scope constraints. CHROMIUM patches (10-13) are vendor-only additions for sa8775p/sa8300 platform support.

Recommendation: Hold merge until upstream series is actually posted and lore links become accessible for diff verification. Once posted, re-validate that PR patches match the upstream submission exactly.

@qlijarvis

Copy link
Copy Markdown

PR #693 — checker-log-analyzer

PR: #693
Checker run: https://github.com/qualcomm-linux/kernel-config/actions/runs/27380824129

Checker Result Summary
Checker Result Summary
checkpatch All 13 commits pass checkpatch.pl
dt-binding-check ⏭️ No DT binding changes
dtb-check ⏭️ No devicetree changes
sparse-check No new sparse warnings introduced
check-uapi-headers No UAPI header changes
check-patch-compliance 8 violations (4 FROMLIST mismatches + 4 CHROMIUM prefix errors)
tag-check N/A Not applicable for this branch
qcom-next-check ⚠️ FROMLIST commits OK; CHROMIUM prefix not allowed

Detailed report: Full report

Checker analysis — click to expand

🤖 CI Checker Analysis (checker-log-analyzer)

PR: #693 - C-PHY support for Qualcomm CAMSS driver
Source: https://github.com/qualcomm-linux/kernel-config/actions/runs/27380824129

Checker Result Summary
checkpatch All 13 commits pass checkpatch.pl
dt-binding-check ⏭️ No DT binding changes
dtb-check ⏭️ No devicetree changes
sparse-check No new sparse warnings introduced
check-uapi-headers No UAPI header changes
check-patch-compliance 8 violations (4 FROMLIST mismatches + 4 CHROMIUM prefix errors)
tag-check N/A Not applicable for this branch
qcom-next-check ⚠️ FROMLIST commits OK; CHROMIUM prefix not allowed

❌ check-patch-compliance

Root cause: The checker detected two distinct compliance violations across 8 commits.

Failure details:

Issue 1: FROMLIST patches differ from upstream (4 commits)

The following FROMLIST commits have content that differs from their linked lore.kernel.org patches:

Checking commit: FROMLIST: media: qcom: camss: Prepare CSID for C-PHY support
Change is different from the one mentioned in Link

Checking commit: FROMLIST: media: qcom: camss: Initialize lanes after lane configuration is available
Change is different from the one mentioned in Link

Checking commit: FROMLIST: media: qcom: camss: csiphy-3ph: C-PHY needs own lane configuration
Change is different from the one mentioned in Link

Checking commit: FROMLIST: media: qcom: camss: Account for C-PHY when calculating link frequency
Change is different from the one mentioned in Link

Issue 2: CHROMIUM prefix not allowed (4 commits)

The following commits use the CHROMIUM: prefix, which is not a valid prefix for Qualcomm Linux kernel:

Checking commit: CHROMIUM: media: qcom: camss: Program common control register
Commit summary does not start with a required prefix

Checking commit: CHROMIUM: media: qcom: camss: Prepare CSID for C-PHY support in gen3
Commit summary does not start with a required prefix

Checking commit: CHROMIUM: media: qcom: camss: Add sa8775p C-PHY 3ph lane config
Commit summary does not start with a required prefix

Checking commit: CHROMIUM: media: qcom: camss: Add CAMSS_8300 C-PHY support
Commit summary does not start with a required prefix

Fix:

For FROMLIST mismatches (commits 3, 4, 8, 9):

The check-patch-compliance checker compares the actual patch content against the upstream version from lore.kernel.org. When they differ, it means the PR contains modifications not present upstream. You have three options:

  1. If changes are intentional vendor modifications: Change prefix from FROMLIST: to BACKPORT: and add a note in the commit message explaining the delta
  2. If changes are unintentional: Rebase/cherry-pick the exact upstream patches from lore
  3. If upstream was updated: Update the Link: tag to point to the correct version

For CHROMIUM prefix violations (commits 10-13):

The Qualcomm Linux kernel only accepts these prefixes: UPSTREAM:, BACKPORT:, FROMGIT:, FROMLIST:. The CHROMIUM: prefix is not valid.

Action required:

  • Change CHROMIUM: to DOWNSTREAM: or remove the prefix entirely for vendor-specific patches
  • If these patches will be submitted upstream, use FROMLIST: and add Link: tags
  • If these are backports from another tree, use BACKPORT: with appropriate Link: tags

Reproduce locally:

# Clone the kernel-checkers repo
git clone https://github.com/qualcomm-linux/kernel-checkers.git

# Run check-patch-compliance on your branch
cd your-kernel-tree
bash ../kernel-checkers/check-patch-compliance.sh \
  --kernel-src . \
  --base <base-commit> \
  --head <your-branch-head>

For the FROMLIST mismatch check specifically:

# For each FROMLIST commit, the checker does:
# 1. Extracts the Link: tag URL
# 2. Downloads the patch from lore using b4
# 3. Compares the diff content
# 4. Reports if they differ

# You can manually verify with:
b4 am <lore-message-id>
git diff <your-commit> <b4-downloaded-patch>

Verdict

8 blockers must be fixed before merge:

  • 4 FROMLIST commits have content mismatches with upstream
  • 4 CHROMIUM-prefixed commits use an invalid prefix

Recommended actions:

  1. Review the 4 FROMLIST commits (03, 04, 08, 09) and either sync with upstream or change to BACKPORT: prefix
  2. Replace CHROMIUM: with DOWNSTREAM: or appropriate prefix for commits 10-13
  3. Re-run the checker after fixes to verify compliance

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

7 participants